haskell - MongoDB haskell ORM
全部标签 我想使用xml-conduit来解析GPX文件。到目前为止,我有以下内容:{-#LANGUAGEOverloadedStrings#-}importControl.ApplicativeimportData.TextasTimportText.XMLimportText.XML.CursordataTrkpt=Trkpt{trkptLat::Text,trkptLon::Text,trkptEle::Text,trkptTime::Text}deriving(Show)trkptsFromFilepath=gpxTrkpts.fromDocumentText.XML.readFiled
我正在尝试制作一个将在Haskell中公开但在C++中实现的数据结构。到目前为止,我已经在.cpp文件中实现了它,将我需要的所有函数声明为extern"C"并将源文件添加到c-.cabal文件中的sources字段。当我构建项目时(在本例中使用stackbuild),它似乎构建得很好。我知道它正在对C++文件做某事,因为如果有错误它就不会编译。我还没有尝试运行这个项目,因为它是一个库,到目前为止它还没有写任何“可运行”的东西,但repl似乎不起作用。当我尝试运行它时(在本例中为stackrepl),我收到一个丢失的符号错误,其中包含一些损坏的名称,这些名称可能是也可能不是我文件中的名称
我正在开发一个小的haskell程序,它使用我用C++开发的外部静态库。它通过ghc的FFI(外部函数接口(interface))访问库。在这个库中,我想对控制台进行一些输出。但是,在我看来,看起来事物的C++端没有正确的stdout句柄,因为输出没有出现在控制台上。那么,我的问题是:是ghc劫持了这三个流(stdout、stdin、stderr)还是libstdc++只是因为我正在与ghc链接而没有初始化它们?如果我的FFI导入写入标准输出,它们是否需要“安全”?如何将标准输出传递给C函数?我应该直接传递它还是需要C类型?附加说明:我将libstdc++直接链接到可执行文件(即ghc
这个问题在这里已经有了答案:AHaskellfunctionoftype:IOString->String(4个答案)关闭7年前。相当简单的问题,但我很难克服。我在网上找到的所有示例都没有用,不确定是不是因为它们已经过时并且IO中的某些内容在过去2-3年中发生了变化,或者我遗漏了一些明显的东西。我知道用readFile读取文件返回IOString并且没有简单的方法来摆脱它,但据说可以简单地将文件读入正常String是s它在命令行中工作,但我不能让它在函数中工作。getString::IOStringgetString=readFile"Input.txt"相当简单,但返回IOStrin
我在使用Ajhc跟踪OpenGL中的2d对象时一直遇到问题。我不知道如何跟踪我的对象并防止它离开设备的宽度和高度。谁能提供帮助?我的代码在这里:moduleDrawwhereimportCubeVertsimportCoSysimportAndroidNdkimportAndroidNdk.LogimportForeign.Marshal.ArrayspriteMv::Float->Float->Float->Float->Float->IO()spriteMvxydxdyz=dodrawFuncdrawFunc::IO()drawFunc=doc_glDrawArraysc_GL_T
在Haskell中使用FFI到C++时,在cabalrepl中运行函数时我能够正确捕获异常,但是在使用cabalrun运行时,异常是没有被抓到。一个简单的cabal项目展示了这个问题如下:exception.cabal:name:exceptionversion:0.1.0.0build-type:Simplecabal-version:>=1.10executableexceptionmain-is:Main.hsc-sources:main.cxxbuild-depends:base>=4.7&&主.cxx:#include#includeextern"C"inths_except
我注意到Haskell(来自Windows上Haskell平台的ghci7.10.2)翻转了QNAN上的标志(0/0::Double)从我在C++中看到的(测试MSVSC++2013和cygwingcc4.9.2)。Haskell生成位模式0xfff8000000000000对于(0/0)(和-(0/0)产生0x7ff8...)。这与C++实现似乎相反。这里有一个测试程序来说明:importData.WordimportUnsafe.CoerceimportText.PrintfdblToBits::Double->Word64dblToBits=unsafeCoercetest::D
我遇到了这个命令序列的问题:wgethttp://hackage.haskell.org/package/github-0.7.1/github-0.7.1.tar.gztarzxfgithub-0.7.1.tar.gzcdgithub-0.7.1ghcisamples/Users/ShowUser.hs我得到的错误是:Github/Private.hs:142:0:error:missingbinaryoperatorbeforetoken"("Github/Private.hs:148:0:error:missingbinaryoperatorbeforetoken"("phase
我正在尝试从C++调用Haskell。我尝试使用this解释;并且已经在SO上问了一个问题.但是,我没有得到任何答案,所以我想重新制定一个最小的、完整的和可验证的示例。我正在使用Debian,这是我拥有的(在同一文件夹中):C++://main.cpp#include#include"Hello_stub.h"intmain(intargc,char**argv){hs_init(&argc,&argv);std::couthaskell://hello.hsmoduleHellowhereforeignexportccallhelloFromHaskell::IO()helloFro
我正在编写一个需要解释和评估haskell代码的C++应用程序。此代码在编译时是未知的,而是由用户提供的。有没有办法将haskell编译器/解释器(如GHCi或hugs)用作库?我找到了FFI,但这似乎只适用于编译时已知的haskell代码。我找到了GHCAPI和提示,但它们似乎只在我想从haskell中解释haskell代码时才起作用。 最佳答案 我建议不要使用GHCapi,而是绑定(bind)到Hint对于这种特殊方法,它只是GHCapi的简化包装器。我推荐这个的原因是因为GHCapi的学习曲线有点陡峭。但无论如何,就像我在评论